﻿/*
 * Created by SharpDevelop.
 * User: edu
 * Date: 09/11/2011
 * Time: 10:00 p.m.
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.Drawing;
using System.Windows.Forms;
using Business_Logic;

namespace PetSoft.GUI.Compras
{
	/// <summary>
	/// Description of GUIEditarPrecioProductoProveedor.
	/// </summary>
	public partial class GUIEditarPrecioProductoProveedor : Form
	{
        int idProd;
        int idProv;
        String nombreProducto;
        String descripcionProducto;
        float precioProducto;
		public GUIEditarPrecioProductoProveedor()
		{
			//
			// The InitializeComponent() call is required for Windows Forms designer support.
			//
			InitializeComponent();
			
			//
			// TODO: Add constructor code after the InitializeComponent() call.
			//
		}

        public GUIEditarPrecioProductoProveedor(int idProducto, int idProveedor,String nombre, String descripcion, String precioAntiguo)
        {
        	try{
	        	InitializeComponent();
	            this.ProductoTB.Text = nombre;
	            this.DescripcionTB.Text = descripcion;
	            this.precioAntiguoTB.Text = precioAntiguo;
	            this.idProd = idProducto;
	            this.idProv = idProveedor;
	            this.NuevoPrecioTB.KeyPress+=new KeyPressEventHandler(Utils.DecimalesPuntoTB);
				this.NuevoPrecioTB.ShortcutsEnabled=false; 
			}catch(Exception ex){
				Utils.MessageError("",ex);
			}
   
        }

        private void GuardarBTN_Click(object sender, EventArgs e)
        {
        	try{
	        	bool NoValido = validaPrecio(this.NuevoPrecioTB.Text);
	            if (NoValido)
	            {
	
	            	Utils.MessageAviso("El precio a Modificar es Incorrecto");
	
	            }else {
	
	            	if (Utils.MessagePregunta("¿Está seguro de cambiar el precio del Producto?"))
	                {
	                    BLProveedor blTemporal = new BLProveedor();
	                    int resultado = blTemporal.actualizarPrecio(this.idProd, this.idProv, precioProducto);
	
	                    if (resultado == 1)
	                    {Utils.MessageInformation("El precio ha sido actualizado exitosamente"); this.Close();}
	                    else if (resultado == 2)
	                    	Utils.MessageError("Problemas en el servidor, intentelo mas tarde",null);
	                }
	            }
	          }catch(Exception ex){
				Utils.MessageError("",ex);
			}
        }

        private void CancelarBTN_Click(object sender, EventArgs e)
        {
            this.Close();
        }


        private bool validaPrecio(String precio)
        {

            try
            {
                //MessageBox.Show(precio);
                precio = precio.Replace(",", ".");
                //MessageBox.Show(precio);
                var precioFloat = (float)Convert.ToDouble(precio);
                if (precioFloat > 0)
                {
                    precioProducto = precioFloat;
                    return false;
                }
                else return true;

            }
            catch
            {
                return true;
            }


        } 
            
	}
}
